Automated Unit Testing of JavaScript Code through Symbolic Executor SymJS

نویسندگان

  • Hideo Tanida
  • Tadahiro Uehara
  • Guodong Li
  • Indradeep Ghosh
چکیده

JavaScript is expected to be a programming language of even wider use, considering demands for more interactive web/mobile applications and deployment in server-side software. While reliability of JavaScript code will be of more importance, testing techniques for the language remain insufficient, compared to other languages. We propose a technique to automatically generate high-coverage unit tests for JavaScript code. The technique makes use of symbolic execution engine for JavaScript, and symbolic stub/driver generation engine, which injects symbolic variables to system under test. Our methodology allows for automatic generation of input data for unit testing of JavaScript code with high coverage, which ensures quality of target code with reduced effort. Keywords–JavaScript; test generation; symbolic execution; symbolic stub and driver generation.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Automatic Unit Test Generation and Execution for JavaScript Program through Symbolic Execution

JavaScript is expected to be a programming language of even wider use, considering demands for more interactive web/mobile applications. While reliability of JavaScript code will be of more importance, testing techniques for the language remain insufficient compared to other languages. We propose a technique to automatically generate high-coverage unit tests for JavaScript code. The technique m...

متن کامل

Generating Fixtures for JavaScript Unit Testing

In today’s web applications, JavaScript code interacts with the Document Object Model (DOM) at runtime. This runtime interaction between JavaScript and the DOM is errorprone and challenging to test. In order to unit test a JavaScript function that has read/write DOM operations, a DOM instance has to be provided as a test fixture. This DOM fixture needs to be in the exact structure expected by t...

متن کامل

Mathematical Execution: A Unified Approach for Testing Numerical Code

This paper presents Mathematical Execution (ME), a new, unifiedapproach for testing numerical code. The key idea is to (1) capturethe desired testing objective via a representing function and (2) trans-form the automated testing problem to the minimization problem ofthe representing function. The minimization problem is to be solvedvia mathematical optimization. The main...

متن کامل

SmartUnit: Empirical Evaluations for Automated Unit Testing of Embedded Software in Industry

In this paper, we aim at the automated unit coverage-based testing for embedded software. To achieve the goal, by analyzing the industrial requirements and our previous work on automated unit testing tool CAUT, we rebuild a new tool, SmartUnit, to solve the engineering requirements that take place in our partner companies. SmartUnit is a dynamic symbolic execution implementation, which supports...

متن کامل

ProScript-TLS: Verifiable Models and Systematic Testing for TLS 1.3

As TLS progresses into major new revisions in TLS 1.3, implementers are once again tasked with upgrading existing TLS code. This includes dealing with concerns such as testing new cryptographic mechanisms while preserving backwards compatibility and preventing downgrade attacks. It would be attractive for implementers to be able to quickly extract a composite symbolic model from their evolving ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2015